package net.flowas.genericcrud.rest;

import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

import net.flowas.genericcrud.audit.AuditResource;

//@Api(value = CrudConstant.PATH, tags = "Sample JAX-RS service with Swagger documentation")
@Path(CrudConstant.PATH)
@Produces(MediaType.APPLICATION_JSON)
public interface CrudRest {

  @Path("/items")
  ItemsResource getItemsResource();

  @Path("/i18n")
  I18nResource getI18nResource();

  @Path("/reports")
  ReportResource getReportResource();

  @Path("/profile")
  ProfileResource getProfileResource();

  @Path("/files")
  FileResource getFileResource();

  @Path("addons/{id}")
  Object getAddon(@PathParam("id") String id);
  
  @Path("/audit")
  AuditResource getAuditResource();
}
